Automatic Verification of Sequential Consistency for Unbounded Addresses and Data Values
نویسندگان
چکیده
Sequential consistency is the archetypal correctness condition for the memory protocols of shared-memory multiprocessors. Typically, such protocols are parameterized by the number of processors, the number of addresses, and the number of distinguishable data values, and typically, automatic protocol verification analyzes only concrete instances of the protocol with small values (generally < 3) for the protocol parameters. This paper presents a fully automatic method for proving the sequential consistency of an entire parameterized family of protocols, with the number of processors fixed, but the number of addresses and data values being unbounded parameters. Using some practical, reasonable assumptions (data independence, processor symmetry, location symmetry, simple store ordering, some syntactic restrictions), the method automatically generates a finite-state abstract protocol from the parameterized protocol description; proving sequential consistency of the abstract model, via known methods, guarantees sequential consistency of the entire protocol family. The method is sound, but incomplete, but we argue that it is likely to apply to most real protocols. We present experimental results showing the effectiveness of our method on parameterized versions of the Piranha shared memory protocol and an extended version of a directory protocol from the University of Wisconsin Multifacet Project.
منابع مشابه
Automatic measurement of instantaneous changes in the walls of carotid artery with sequential ultrasound images
Introduction: This study presents a computerized analyzing method for detection of instantaneous changes of far and near walls of the common carotid artery in sequential ultrasound images by applying the maximum gradient algorithm. Maximum gradient was modified and some characteristics were added from the dynamic programming algorithm for our applications. Methods: The algorithm was evaluat...
متن کاملModel Checking Sequential Consistency and Parameterized Protocols
Perhaps the most difficult aspect of designing a shared memory multiprocessor is the hardware protocol that facilitates the sharing of memory by multiple processors; these protocols are thus a natural target for formal verification. In this thesis we consider several problems relevant to model checking these protocols. The ultimate specification of a protocol is the memory model. Our more theor...
متن کاملModel Checking Sequential Consistency and Parameterized Protocols
Perhaps the most difficult aspect of designing a shared memory multiprocessor is the hardware protocol that facilitates the sharing of memory by multiple processors; these protocols are thus a natural target for formal verification. In this thesis we consider several problems relevant to model checking these protocols. The ultimate specification of a protocol is the memory model. Our more theor...
متن کاملVerifying Sequential
In shared-memory multiprocessors sequential consistency ooers a natural tradeoo between the exibility aaorded to the implementor and the complexity of the programmer's view of the memory. Sequential consistency requires that some inter-leaving of the local temporal orders of read/write events at diierent processors be a trace of serial memory. We develop a systematic methodology for proving seq...
متن کاملVerifying Sequential Consistency on Shared-Memory Multiprocessor Systems
In shared-memory multiprocessors sequential consistency o ers a natural tradeo between the exibility a orded to the implementor and the complexity of the programmer's view of the memory. Sequential consistency requires that some interleaving of the local temporal orders of read/write events at di erent processors be a trace of serial memory. We develop a systematic methodology for proving seque...
متن کامل